package com.example.javaserve.service;

import com.example.javaserve.entity.UserBaseInfo;
import com.example.javaserve.result.Result;


public interface UserCRUD {
    Result create(UserBaseInfo  user);

    /**
     * 删除用户
     *
     * @param user 待删除的用户
     * @return 删除成功的用户
     */
    Result<UserBaseInfo> delete(UserBaseInfo  user);

    /**
     * 修改用户
     *
     * @param user 待修改的用户
     * @return 修改成功的用户
     */
    Result<UserBaseInfo> update(UserBaseInfo user);


    /**
     * 根据userName查找用户
     *
     * @param userName 用户帐号
     * @return 用户帐号对应的用户
     */
    UserBaseInfo findByUserName(String userName);

    /**
     * 判断注册使用的邮箱是否存在
     *
     * @param email 邮箱号
     * @return 是否找到
     */
    boolean registerEmailExist(String email);

    Result passwordIsRight(String username,String password);


}
